package com.shujia.util;

import org.apache.commons.dbcp2.BasicDataSource;

import java.sql.Connection;
import java.sql.SQLException;

public class JDBCUtil {

    /*
    //私有全局变量
    private static Connection con;

    */
    /*
     * 静态代码块
     * 在类加载的时候执行
     */
    /*
    static {
        System.out.println("创建数据库的连接，daoMydql实现类");
        try {
            //1、加载驱动
            Class.forName("com.mysql.jdbc.Driver");

            //2、建立连接
            con = DriverManager.getConnection("jdbc:mysql://master:3306/shujia?useUnicode=true&characterEncoding=utf-8", "root", "123456");

        } catch (Exception e) {
            e.printStackTrace();
        }
    }*/

    /**
     * 创建连接池
     *
     * @return
     */
    private static BasicDataSource dataSource;

    static {
        //创建连接池
        dataSource = new BasicDataSource();

        dataSource.setDriverClassName("com.mysql.jdbc.Driver");
        dataSource.setUrl("jdbc:mysql://master:3306/shujia?useUnicode=true&characterEncoding=utf-8");
        dataSource.setUsername("root");
        dataSource.setPassword("123456");

        //初始连接池大小
        dataSource.setInitialSize(2);

        //连接池最大连接数量
        dataSource.setMaxIdle(10);
    }

    //获取连接的方法
    public static Connection getCon() {
        System.out.println("从连接池中获取连接");
        try {
            return dataSource.getConnection();
        } catch (SQLException e) {
            e.printStackTrace();
        }

        return null;
    }
}
